Computing and communication networks typically include devices, such as routers, switches or gateways, which transfer or switch data, such as packets, from one or more sources to one or more destinations. A network switch or router, in particular, may include a networking device that connects network segments and computing devices.
The size and capacity of a particular router may vary considerably depending on the intended application of the router. For example, routers may provide connectivity inside enterprises, between enterprises and the Internet, and inside Internet Service Providers (ISPs). The largest routers may interconnect ISPs, may be used inside ISPs, or may be used in very large enterprise networks. The smallest routers may provide connectivity for small businesses and/or home offices.
Routers may include memory that is used to store packets as the packets are being processed by the router. During manufacture of the router, it may be desirable to test the operation of the router, including the memory in the router, to ensure the memory is free of defects. Memory controllers in the router may include test circuits designed to test a low-level integrity of the memory. Some memory-related errors, however, may not be detectable by simply testing the integrity of each individual memory location. Dedicated router testing devices (“router testers”) can be plugged into the input port(s) of the router. Router testers may provide a stream of test packets to the router so that the router may be tested in a simulated run-time environment. Memory testing procedures based on the use of router testers may find memory-related errors that may not be detectable using the low-level memory testing circuits of the memory controllers.
Exhaustively testing all the ports of a router using router testers, however, can be a prohibitively time consuming and expensive effort for a router manufacturer.